/**
 * 
 */
package com.skyme.automation.generate.common.db;

import java.sql.Driver;

/**
 * 数据库管理
 * @author zhangfeng
 *
 */
public interface DBManager {
	
	//自动增长
	public static final int SUPPORT_AUTO_INCREMENT = 0;
	//自动增长设置
	public static final int SUPPORT_AUTO_INCREMENT_SETTING = 1;
	//倒序索引
	public static final int SUPPORT_DESC_INDEX = 2;
	
	public static final int SUPPORT_FULLTEXT_INDEX = 3;

	public static final int SUPPORT_SCHEMA = 4;

	public static final int SUPPORT_SEQUENCE = 5;
	
	/**
	 * 得到数据库指定的ID
	 * @return
	 */
	public String getId();
	
	/**
	 * 得到数据连接串
	 * @param serverName 服务名
	 * @param dbName 数据库名
	 * @param port 端口
	 * @return
	 */
	public String getURL(String serverName, String dbName, int port);

	/**
	 * 得到默认端口
	 * @return
	 */
	public int getDefaultPort();

	/**
	 * 得到驱动程序名称
	 * @return
	 */
	public String getDriverClassName();

	/**
	 * 加载驱动类
	 * @param driverClassName 驱动类名
	 * @return
	 */
	public Class<Driver> getDriverClass(String driverClassName);

}
